ã¬ã¹ãã³ã·ããã¶ã€ã³ã®ããã®CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒãç¿åŸããŸãããã倿§ãªããã€ã¹ããã©ãŠã¶ã§æé©åãããããã©ãŒãã³ã¹ãšä¿å®å¯èœãªã¹ã¿ã€ã«ã·ãŒãã®ããã«ãæ¡ä»¶ä»ãããŒããå®è£ ããŸãã
CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã®æ¡ä»¶ä»ãããŒãïŒã¬ã¹ãã³ã·ããªã¬ã€ã€ãŒç®¡ç
ãŠã§ãéçºã®é²åã¯ãç¹ã«ã¬ã¹ãã³ã·ããã¶ã€ã³ã«ãããŠãCSSã管çããããã®é«åºŠãªãã¯ããã¯ãå¿ èŠãšããŸããCSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã¯ãæ¡ä»¶ä»ãããŒãæŠç¥ãšçµã¿åãããããšã§ãããŸããŸãªããã€ã¹ãç»é¢ãµã€ãºã«åãããŠã¹ã¿ã€ã«ã·ãŒããæ§é åããæé©åããããã®åŒ·åãªã¢ãããŒããæäŸããŸãããã®èšäºã§ã¯ãCSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã䜿çšããŠã¬ã¹ãã³ã·ããªã¬ã€ã€ãŒç®¡çãå®è£ ããã°ããŒãã«ãªãªãŒãã£ãšã³ã¹å šäœã§å¹ççãªããã©ãŒãã³ã¹ãšä¿å®æ§ã確ä¿ããããã®å æ¬çãªã¬ã€ããæäŸããŸãã
CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã®çè§£
CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã¯ãCSS Cascading and Inheritance Level 5ã§å°å ¥ãããã¹ã¿ã€ã«ãé©çšãããé åºãå¶åŸ¡ããã¡ã«ããºã ãæäŸããŸããé¢é£ããã¹ã¿ã€ã«ãè«ççãªã¬ã€ã€ãŒã«ã°ã«ãŒãåããåŸæ¥ã®CSSç¹ç°æ§ã«ãŒã«ãäžæžãããæç¢ºãªåªå é äœéå±€ãå®çŸ©ã§ããŸããããã«ãããã¹ã¿ã€ã«ã®é©çšãããé«åºŠã«å¶åŸ¡ã§ããè€éãªã¹ã¿ã€ã«ã·ãŒãã®ç®¡çã容æã«ãªããæå³ããªãã¹ã¿ã€ã«ã®ç«¶åãé²ãããšãã§ããŸãã
ã«ã¹ã±ãŒãã¬ã€ã€ãŒã®äž»ãªå©ç¹ïŒ
- çµç¹ã®æ¹åïŒã«ã¹ã±ãŒãã¬ã€ã€ãŒã䜿çšãããšãCSSãè«çã°ã«ãŒãïŒäŸïŒããŒã¹ã¹ã¿ã€ã«ãã³ã³ããŒãã³ãã¹ã¿ã€ã«ãããŒãã¹ã¿ã€ã«ããŠãŒãã£ãªãã£ã¹ã¿ã€ã«ïŒã«æ§é åããã³ãŒãã®å¯èªæ§ãšä¿å®æ§ãåäžãããããšãã§ããŸãã
- ç¹ç°æ§ã®ç«¶åã®è»œæžïŒæç¢ºãªã¬ã€ã€ãŒé åºãå®çŸ©ããããšã§ãé床ã«å ·äœçãªã»ã¬ã¯ã¿ãŒã®å¿ èŠæ§ãæå°éã«æããããã¯ãªãŒã³ã§ä¿å®æ§ã®é«ãCSSã«ã€ãªãããŸãã
- ãªãŒããŒã©ã€ãã®ç°¡çŽ åïŒã¬ã€ã€ãŒã䜿çšãããšãã¹ã¿ã€ã«ã®äžè²«ãããªãŒããŒã©ã€ãã容æã«ãªããã«ã¹ã¿ãã€ãºãäºæž¬å¯èœãã€ç¢ºå®ã«é©çšãããããã«ãªããŸãã
- ããŒãã®åŒ·åïŒã¬ã€ã€ãŒã䜿çšããŠããŒãã·ã¹ãã ãå®è£ ããæå°éã®ã³ãŒã倿Žã§ããŸããŸãªèŠèŠã¹ã¿ã€ã«ãåãæ¿ããããšãã§ããŸãã
ã«ã¹ã±ãŒãã¬ã€ã€ãŒãå®çŸ©ããã«ã¯ã@layer at-ruleã䜿çšããŸãïŒ
@layer base;
@layer components;
@layer theme;
@layer base {
body { font-family: sans-serif; }
}
@layer components {
button { padding: 10px 20px; }
}
@layer theme {
button { background-color: blue; color: white; }
}
ãã®äŸã§ã¯ãbaseã¬ã€ã€ãŒå
ã®ã¹ã¿ã€ã«ãæåã«é©çšãããæ¬¡ã«componentsãæåŸã«themeãé©çšãããŸããã¹ã¿ã€ã«ãè€æ°ã®ã¬ã€ã€ãŒã§å®çŸ©ãããŠããå ŽåãåŸã®ã¬ã€ã€ãŒã®ã¹ã¿ã€ã«ãåªå
ãããŸãã
ã¬ã¹ãã³ã·ããã¶ã€ã³ã®ããã®æ¡ä»¶ä»ãããŒã
ã¬ã¹ãã³ã·ããã¶ã€ã³ã«ã¯ãããŸããŸãªç»é¢ãµã€ãºãããã€ã¹ã«ã·ãŒã ã¬ã¹ã«é©å¿ããWebãµã€ãã®äœæãå«ãŸããŸããããã«ã¯ãããã€ã¹ã®ç¹æ§ã«åºã¥ããŠç°ãªãCSSã«ãŒã«ãããŒãããå¿ èŠãããããšããããããŸããæ¡ä»¶ä»ãããŒãã䜿çšãããšãç¹å®ã®æ¡ä»¶ãæºããããå Žåã«ã®ã¿ç¹å®ã®ã«ã¹ã±ãŒãã¬ã€ã€ãŒãããŒãããããã©ãŒãã³ã¹ãæé©åããäžèŠãªã³ãŒããåæžã§ããŸãã
æ¡ä»¶ä»ãããŒãã®æ¹æ³ïŒ
- ã¡ãã£ã¢ã¯ãšãªïŒã¡ãã£ã¢ã¯ãšãªã¯ãã¬ã¹ãã³ã·ããã¶ã€ã³ã®åºæ¬çãªããŒã«ã§ããç»é¢ãµã€ãºãããã€ã¹ã®åããè§£å床ããã®ä»ã®ã¡ãã£ã¢æ©èœã«åºã¥ããŠCSSã«ãŒã«ãé©çšã§ããŸãã
@layerã«ãŒã«å ã§ã¡ãã£ã¢ã¯ãšãªã䜿çšããŠãã¬ã€ã€ãŒãæ¡ä»¶ä»ãã§ããŒãã§ããŸãã - JavaScriptãã£ãŒãã£æ€åºïŒJavaScriptã䜿çšããŠããã©ãŠã¶ã®æ©èœãŸãã¯ããã€ã¹ã®æ©èœãæ€åºãããã®çµæã«åºã¥ããŠCSSã¬ã€ã€ãŒãåçã«ããŒãã§ããŸããããã¯ããã©ãŠã¶åºæã®çãåŠçãããã髿§èœããã€ã¹ã§é«åºŠãªæ©èœããµããŒããããããã®ã«åœ¹ç«ã¡ãŸãã
- ãµãŒããŒãµã€ãæ€åºïŒãµãŒããŒã¯ããŠãŒã¶ãŒãšãŒãžã§ã³ãæååã«åºã¥ããŠãŠãŒã¶ãŒã®ããã€ã¹ãæ€åºããããã€ã¹ã®çš®é¡ã«åºã¥ããŠç°ãªãCSSãã¡ã€ã«ãŸãã¯ã¹ãããããæäŸã§ããŸãã
ã¬ã¹ãã³ã·ããªã¬ã€ã€ãŒç®¡çã®å®è£
CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒãæ¡ä»¶ä»ãããŒããã¯ããã¯ãšçµã¿åãããããšã§ãå ç¢ã§å¹ççãªã¬ã¹ãã³ã·ããã¶ã€ã³ã·ã¹ãã ãäœæã§ããŸããã¬ã¹ãã³ã·ããªã¬ã€ã€ãŒç®¡çãå®è£ ããããã®ã¹ããããã€ã¹ãããã¬ã€ããæ¬¡ã«ç€ºããŸãã
1. ããŒã¹ã¬ã€ã€ãŒã®å®çŸ©ïŒ
ãŸãããã¹ãŠã®ããã€ã¹ã«é©çšãããã³ã¢ã¹ã¿ã€ã«ãå«ãããŒã¹ã¬ã€ã€ãŒãå®çŸ©ããŸãããããã®ã¬ã€ã€ãŒã«ã¯éåžžãæ¬¡ã®ãã®ãå«ãŸããŸãã
- ããŒã¹ã¹ã¿ã€ã«ïŒãªã»ããã¹ã¿ã€ã«ãã¿ã€ãã°ã©ãã£ã®ããã©ã«ããããã³åºæ¬çãªã¬ã€ã¢ãŠãã«ãŒã«ã
- ã³ã³ããŒãã³ãã¹ã¿ã€ã«ïŒãã¿ã³ããã©ãŒã ãããã²ãŒã·ã§ã³ã¡ãã¥ãŒãªã©ã®åå©çšå¯èœãªUIã³ã³ããŒãã³ãã®ã¹ã¿ã€ã«ã
@layer base {
/* Reset styles */
body, h1, h2, h3, p, ul, li { margin: 0; padding: 0; }
body { font-family: Arial, sans-serif; }
/* Base component styles */
button { padding: 10px 20px; border: none; cursor: pointer; }
}
2. ããã€ã¹åºæã®ã¬ã€ã€ãŒã®äœæïŒ
次ã«ãããŸããŸãªããã€ã¹ã«ããŽãªïŒã¢ãã€ã«ãã¿ãã¬ããããã¹ã¯ããããªã©ïŒã«å¯ŸããŠåå¥ã®ã¬ã€ã€ãŒãäœæããŸããã¡ãã£ã¢ã¯ãšãªã䜿çšããŠãç»é¢ãµã€ãºã«åºã¥ããŠãããã®ã¬ã€ã€ãŒãæ¡ä»¶ä»ãã§ããŒãããŸãã
@layer mobile {
/* Mobile-specific styles */
body { font-size: 14px; }
}
@layer tablet {
/* Tablet-specific styles */
body { font-size: 16px; }
}
@layer desktop {
/* Desktop-specific styles */
body { font-size: 18px; }
}
@media (max-width: 768px) {
@layer mobile;
}
@media (min-width: 769px) and (max-width: 1024px) {
@layer tablet;
}
@media (min-width: 1025px) {
@layer desktop;
}
éèŠïŒã¡ãã£ã¢ã¯ãšãªå ã§`@layer`åŒã³åºãã宣èšããé åº*ã¯*éèŠã§ãïŒããã¯ã«ã¹ã±ãŒãã«åœ±é¿ããŸããäžèšã®äŸã§ã¯ãã¡ãã£ã¢ã¯ãšãªå ã§ã¬ã€ã€ãŒãæç€ºçã«åŒã³åºããŠããããã衚瀺ãããé åºãéèŠã§ãã代ããã«é åºä»ããªã¹ãã䜿çšããŠã¬ã€ã€ãŒã宣èšãããšããã®åé¡ãåé¿ã§ããŸãã
@layer base, mobile, tablet, desktop; /* Define layer order */
@layer base {
/* Reset styles */
body, h1, h2, h3, p, ul, li { margin: 0; padding: 0; }
body { font-family: Arial, sans-serif; }
/* Base component styles */
button { padding: 10px 20px; border: none; cursor: pointer; }
}
@layer mobile {
/* Mobile-specific styles */
body { font-size: 14px; }
}
@layer tablet {
/* Tablet-specific styles */
body { font-size: 16px; }
}
@layer desktop {
/* Desktop-specific styles */
body { font-size: 18px; }
}
@media (max-width: 768px) {
@layer mobile;
}
@media (min-width: 769px) and (max-width: 1024px) {
@layer tablet;
}
@media (min-width: 1025px) {
@layer desktop;
}
3. ã¬ã€ã€ãŒå ã®ã¹ã¿ã€ã«ã®æŽçïŒ
åããã€ã¹åºæã®ã¬ã€ã€ãŒå ã§ãã¹ã¿ã€ã«ãè«ççã«æŽçããŸãããããã®ã¬ã€ã€ãŒããç¹å®ã®ã³ã³ããŒãã³ããŸãã¯æ©èœã®ãµãã¬ã€ã€ãŒã«ããã«åå²ã§ããŸãã
@layer mobile {
@layer navigation;
@layer hero;
@layer navigation {
/* Mobile navigation styles */
nav { display: none; }
}
@layer hero {
/* Mobile hero section styles */
.hero { padding: 20px; }
}
}
4. ããŒãã®å®è£ ïŒãªãã·ã§ã³ïŒïŒ
è€æ°ã®ããŒãããµããŒãããå¿
èŠãããå Žåã¯ãåå¥ã®themeã¬ã€ã€ãŒãäœæããæ¡ä»¶ä»ãããŒããŸãã¯JavaScriptã䜿çšããŠãç°ãªãããŒãã¹ã¿ã€ã«ãåãæ¿ããŸãã
@layer theme {
/* Default theme styles */
body { background-color: #fff; color: #333; }
}
@layer dark-theme {
/* Dark theme styles */
body { background-color: #333; color: #fff; }
}
/* Example using JavaScript to toggle themes */
<button id="theme-toggle">Toggle Dark Theme</button>
<script>
const themeToggle = document.getElementById('theme-toggle');
themeToggle.addEventListener('click', () => {
document.body.classList.toggle('dark-theme');
});
</script>
.dark-theme {
@layer dark-theme; /* This won't work on its own. We need to define the layer */
}
@layer dark-theme {
body { background-color: #000; color: #eee; }
button {background-color: #444; color: #fff;}
}
5. ããã©ãŒãã³ã¹ã®æé©åïŒ
ããã©ãŒãã³ã¹ãæé©åããã«ã¯ãæ¬¡ã®æŠç¥ãæ€èšããŠãã ããã
- CSSãã¡ã€ã«ã®æå°åïŒHTTPãªã¯ãšã¹ããæžããããã«ãCSSãã¡ã€ã«ãã§ããã ãå°ãªããã¡ã€ã«ã«çµåããŸãã
- CSSã®çž®å°ïŒCSSãã¡ã€ã«ããäžèŠãªç©ºçœãšã³ã¡ã³ããåé€ããŠããµã€ãºãçž®å°ããŸãã
- Gzipå§çž®ã®äœ¿çšïŒãµãŒããŒã§Gzipå§çž®ãæå¹ã«ããŠãCSSãã¡ã€ã«ããã©ãŠã¶ã«éä¿¡ããåã«å§çž®ããŸãã
- CSSãã¡ã€ã«ã®ãã£ãã·ã¥ïŒãµãŒããŒãæ§æããŠCSSãã¡ã€ã«ããã£ãã·ã¥ããè€æ°ã®ããŒãžèšªåã§åå©çšã§ããããã«ããŸãã
- ã¯ãªãã£ã«ã«CSSïŒã¯ãªãã£ã«ã«CSSãå®è£ ããŸããããã¯ããã¡ãŒã¹ããã¥ãŒã³ã³ãã³ãã®ã¬ã³ããªã³ã°ã«å¿ èŠãªCSSãã€ã³ã©ã€ã³åããæ®ãã®CSSãéåæã§ããŒãããããšãæå³ããŸããããã«ãããã¬ã³ããªã³ã°ããããã¯ããæéãççž®ã§ããŸãã
ã°ããŒãã«ãªèæ ®äºé ãšãã¹ããã©ã¯ãã£ã¹
ã°ããŒãã«ãªãªãŒãã£ãšã³ã¹åãã«ã¬ã¹ãã³ã·ããªã¬ã€ã€ãŒç®¡çãå®è£ ããå Žåã¯ã以äžãèæ ®ããŠãã ããã
- ããŒã«ãªãŒãŒã·ã§ã³ïŒããŸããŸãªèšèªãšæžãæ¹åããµããŒãããããã«ã¹ã¿ã€ã«ã調æŽããŸããCSSè«çããããã£ïŒäŸïŒ
margin-leftã®ä»£ããã«margin-inline-startïŒã䜿çšããŠãå·Šããå³ããã³å³ããå·Šã®èšèªã§é©åãªã¬ã€ã¢ãŠãã確ä¿ããŸãã - ã¢ã¯ã»ã·ããªãã£ïŒã¬ã¹ãã³ã·ããã¶ã€ã³ããé害ã®ãããŠãŒã¶ãŒã«ãšã£ãŠã¢ã¯ã»ã¹å¯èœã§ããããšã確èªããŸããã»ãã³ãã£ãã¯HTMLã䜿çšããç»åã®ä»£æ¿ããã¹ããæäŸããååãªè²ã®ã³ã³ãã©ã¹ãã確ä¿ããŸãã
- ããã©ãŒãã³ã¹ïŒããã©ãŒãã³ã¹ã®ããã«CSSãæé©åããŠãããŸããŸãªå°ççãªå Žæã§ããããã¯ãŒã¯é床ãç°ãªããŠãŒã¶ãŒã«ãé«éã§ã¹ã ãŒãºãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãä¿èšŒããŸããã³ã³ãã³ãé ä¿¡ãããã¯ãŒã¯ïŒCDNïŒã¯ãäžçäžã®ãŠãŒã¶ãŒã«CSSãã¡ã€ã«ãè¿ éã«é ä¿¡ããã®ã«åœ¹ç«ã¡ãŸãã
- ãã©ãŠã¶ã®äºææ§ïŒããŸããŸãªãã©ãŠã¶ãšããã€ã¹ã§ã¬ã¹ãã³ã·ããã¶ã€ã³ããã¹ãããŠãäºææ§ã確èªããŸããCSSãã¬ãã£ãã¯ã¹ãŸãã¯ããªãã£ã«ã䜿çšããŠãå€ããã©ãŠã¶ããµããŒãããããšãæ€èšããŠãã ããã
- æåçãªæåæ§ïŒè²ãç»åãã¿ã€ãã°ã©ãã£ãéžæããéã¯ãæåçãªéãã«æ³šæããŠãã ãããç¹å®ã®æåã§äžå¿«ãŸãã¯äžé©åãªç»åãã·ã³ãã«ã䜿çšããããšã¯é¿ããŠãã ããã
äŸïŒå³ããå·ŠïŒRTLïŒèšèªã®åŠç
ã¢ã©ãã¢èªãããã©ã€èªã®ãããªRTLèšèªããµããŒãããã«ã¯ãCSSè«çããããã£ãš<html>èŠçŽ ã®dir屿§ã䜿çšããŸãã
<html dir="rtl">
<body>
<div class="container">
<p>This is some text.</p>
</div>
</body>
</html>
.container {
margin-inline-start: 20px; /* Instead of margin-left */
text-align: right; /* Override default left alignment */
}
äŸïŒã¢ãã³CSSã®ãã£ãŒãã£ãŒã¯ãšãªã®äœ¿çš
æ°ããCSSæ©èœã䜿çšãããããå€ããã©ãŠã¶ãšã®äºææ§ã確ä¿ãããå ŽåããããŸãããã£ãŒãã£ãŒã¯ãšãªã¯ããã«æé©ã§ãã
@supports (display: grid) {
.grid-container {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 10px;
}
}
@supports not (display: grid) {
.grid-container {
/* Fallback for browsers that don't support grid */
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.grid-container > * {
width: 30%; /* Approximate 1/3 width */
margin-bottom: 10px;
}
}
äžè¬çãªèœãšã穎ãšãã©ãã«ã·ã¥ãŒãã£ã³ã°
- ç¹ç°æ§ã®åé¡ïŒã«ã¹ã±ãŒãã¬ã€ã€ãŒã䜿çšããŠããç¹ç°æ§ã¯äŸç¶ãšããŠæžå¿µäºé
ã«ãªãå¯èœæ§ããããŸããCSSç¹ç°æ§ããžã¥ã¢ã©ã€ã¶ãŒã䜿çšããŠãç¹ç°æ§ã®ç«¶åãç¹å®ããŠè§£æ±ºããŸãã絶察ã«å¿
èŠã§ãªãéãã
!importantã䜿çšããªãã§ãã ããã - ã¬ã€ã€ãŒé åºã®ç«¶åïŒç®çã®ã¹ã¿ã€ã«ã®åªå é äœãå®çŸããããã«ãã¬ã€ã€ãŒãæ£ããé åºã§å®çŸ©ãããŠããããšã確èªããŠãã ããããã©ãŠã¶ã®éçºè ããŒã«ã䜿çšããŠãã«ã¹ã±ãŒãé åºã調ã¹ãŠãäºæããªãåäœãç¹å®ããŸãã
- ãã©ãŠã¶ã®äºææ§ã®åé¡ïŒããŸããŸãªãã©ãŠã¶ãšããã€ã¹ã§ã¬ã¹ãã³ã·ããã¶ã€ã³ããã¹ãããŠãäºææ§ã®åé¡ãç¹å®ããŠè§£æ±ºããŸããCSSãã¬ãã£ãã¯ã¹ãŸãã¯ããªãã£ã«ã䜿çšããŠãå€ããã©ãŠã¶ããµããŒãããŸãã
- ããã©ãŒãã³ã¹ã®ããã«ããã¯ïŒãã©ãŠã¶ã®éçºè ããŒã«ã䜿çšããŠãé ãç»åã®èªã¿èŸŒã¿ãéå¹ççãªCSSã«ãŒã«ãªã©ãããã©ãŒãã³ã¹ã®ããã«ããã¯ãç¹å®ããŸããã³ãŒããšã¢ã»ãããæé©åããŠãããã©ãŒãã³ã¹ãåäžãããŸãã
çµè«
CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã¯ãæ¡ä»¶ä»ãããŒããšçµã¿åãããããšã§ãã¬ã¹ãã³ã·ããã¶ã€ã³ã§CSSã管çããããã®åŒ·åãªã¢ãããŒããæäŸããŸããã¹ã¿ã€ã«ã·ãŒããè«çã¬ã€ã€ãŒã«æ§é åããããã€ã¹ã®ç¹æ§ã«åºã¥ããŠæ¡ä»¶ä»ãã§ããŒãããããšã§ãå¹ççã§ä¿å®æ§ãé«ããã°ããŒãã«ã«ã¢ã¯ã»ã¹å¯èœãªWebãµã€ããäœæã§ããŸãããã®ã¬ã€ãã§æŠèª¬ãããŠããå©ç¹ãšãã¹ããã©ã¯ãã£ã¹ãçè§£ããããšã§ãã¬ã¹ãã³ã·ããªã¬ã€ã€ãŒç®¡çã广çã«å®è£ ãã倿§ãªåœéçãªãªãŒãã£ãšã³ã¹åãã«CSSãæé©åã§ããŸããã·ãŒã ã¬ã¹ã§å æ¬çãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸããããã«ãããã©ãŒãã³ã¹ãã¢ã¯ã»ã·ããªãã£ãæåçãªæåæ§ãåªå ããããšãå¿ããªãã§ãã ããã
æŠèª¬ãããŠããæŠç¥ã¯ãå°èŠæš¡ãªå人Webãµã€ãããå€§èŠæš¡ãªãšã³ã¿ãŒãã©ã€ãºã¢ããªã±ãŒã·ã§ã³ãŸã§ãå¹ åºããããžã§ã¯ãã«é©ãããå ç¢ã§ã¹ã±ãŒã©ãã«ãªCSSã¢ãŒããã¯ãã£ãæ§ç¯ããããã®åŒ·åãªåºç€ãæäŸããŸããCSSã«ã¹ã±ãŒãã¬ã€ã€ãŒãšæ¡ä»¶ä»ãããŒãã®åãæŽ»çšããŠãã¬ã¹ãã³ã·ãWebéçºã®æ°ããªå¯èœæ§ãè§£ãæŸã¡ãŸãããã